#include <iostream>
#include "sort.h"
using namespace std;

// 冒泡排序函数
void bubbleSort(int arr[], int n) {
    for (int i = 0; i < n - 1; i++) {
        // 设置一个标志变量，用于优化冒泡排序
        bool swapped = false;

        // 最后i个元素已经是有序的了，无需再次比较
        for (int j = 0; j < n - i - 1; j++) {
            // 遍历数组，比较相邻元素
            if (arr[j] > arr[j + 1]) {
                // 交换元素
                swap(arr[j], arr[j + 1]);
                swapped = true;
            }
        }

        // 如果在这一轮排序中没有发生交换，说明数组已经有序，可以提前结束
        if (!swapped)
            break;
    }
}